package com.ybkj.o2o.zhuanche.mapper;

import com.ybkj.o2o.zhuanche.entity.OrderTemp;
import com.ybkj.o2o.zhuanche.entity.OrderTempCriteria;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

import java.util.Date;
import java.util.List;
import java.util.Map;

public interface OrderTempMapper extends BaseMapper<OrderTemp, OrderTempCriteria, Long> {
  Long countByExample(OrderTempCriteria example);

  int deleteByExample(OrderTempCriteria example);

  int deleteByPrimaryKey(Long id);

  int insert(OrderTemp record);

  int insertSelective(OrderTemp record);

  List<OrderTemp> selectByExampleWithRowbounds(OrderTempCriteria example, RowBounds rowBounds);

  List<OrderTemp> selectByExample(OrderTempCriteria example);

  OrderTemp selectByPrimaryKey(Long id);

  int updateByExampleSelective(@Param("record") OrderTemp record,
      @Param("example") OrderTempCriteria example);

  int updateByExample(
      @Param("record") OrderTemp record, @Param("example") OrderTempCriteria example);

  int updateByPrimaryKeySelective(OrderTemp record);

  int updateByPrimaryKey(OrderTemp record);

  OrderTemp findByIdAndAppKey(@Param("orderId")Long orderId, @Param("appKey")String appKey);

  List<OrderTemp> queryByGroupId(@Param("groupId")Long groupId, @Param("appKey")String appKey);
  
  List<Map<String,Object>> countBookTempDriver(@Param("zhuanYuyueMax") Long zhuanYuyueMax, @Param("zhuanYuyueTime") Date zhuanYuyueTime,
	      @Param("appkey") String appKey);
}
